home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / C / Libraries / GUSI 1.4.1 / GUSI / GUSISocket.cp < prev    next >
Encoding:
Text File  |  1994-02-25  |  2.8 KB  |  169 lines  |  [TEXT/MPS ]

  1. /*********************************************************************
  2. Project    :    GUSI                -    Grand Unified Socket Interface
  3. File        :    GUSISocket.cp    -    Default implementations
  4. Author    :    Matthias Neeracher
  5. Language    :    MPW C/C++
  6.  
  7. $Log: GUSISocket.cp,v $
  8. Revision 1.1  1994/02/25  02:30:35  neeri
  9. Initial revision
  10.  
  11. Revision 0.5  1993/06/27  00:00:00  neeri
  12. Socket::ftruncate, Socket::{pre,post}_select
  13.  
  14. Revision 0.4  1993/02/09  00:00:00  neeri
  15. Initialize lurking related fields.
  16.  
  17. Revision 0.3  1992/09/15  00:00:00  neeri
  18. Sockets are regular files for fstat()
  19.  
  20. Revision 0.2  1992/05/21  00:00:00  neeri
  21. Implement select()
  22.  
  23. Revision 0.1  1992/04/27  00:00:00  neeri
  24. getsockopt()
  25.  
  26. *********************************************************************/
  27.  
  28. #include "GUSI_P.h"
  29.  
  30. #include <Time.h>
  31.  
  32. // While most of the calls can't be substituted, some of them can
  33. // and a few others have reasonable defaults
  34.  
  35. Socket::Socket()
  36. {
  37.     refCount    =    0;
  38.     lurking    =    false;
  39.     lurkDescr=    0;
  40. }
  41.  
  42. Socket::~Socket()
  43. {
  44. }
  45.  
  46. int Socket::bind(void *, int)
  47. {
  48.     return GUSI_error(EOPNOTSUPP);
  49. }
  50.  
  51. int Socket::connect(void *, int)
  52. {
  53.     return GUSI_error(EOPNOTSUPP);
  54. }
  55.  
  56. int Socket::listen(int)
  57. {
  58.     return GUSI_error(EOPNOTSUPP);
  59. }
  60.  
  61. Socket * Socket::accept(void *, int *)
  62. {
  63.     return (Socket *) GUSI_error_nil(EOPNOTSUPP);
  64. }
  65.  
  66. int Socket::read(void * buffer, int buflen)
  67. {
  68.     int    fromlen = 0;
  69.     
  70.     return recvfrom(buffer, buflen, 0, nil, &fromlen);
  71. }
  72.  
  73. int Socket::write(void * buffer, int buflen)
  74. {
  75.     return sendto(buffer, buflen, 0, nil, 0);
  76. }
  77.  
  78. int Socket::recvfrom(void *, int, int, void *, int *)
  79. {
  80.     return GUSI_error(EOPNOTSUPP);
  81. }
  82.  
  83. int Socket::sendto(void *, int, int, void *, int)
  84. {
  85.     return GUSI_error(EOPNOTSUPP);
  86. }
  87.  
  88. int Socket::getsockname(void *, int *)
  89. {
  90.     return GUSI_error(EOPNOTSUPP);
  91. }
  92.  
  93. int Socket::getpeername(void *, int *)
  94. {
  95.     return GUSI_error(EOPNOTSUPP);
  96. }
  97.  
  98. int Socket::getsockopt(int, int, void *, int *)
  99. {
  100.     return GUSI_error(EOPNOTSUPP);
  101. }
  102.  
  103. int Socket::setsockopt(int, int, void *, int)
  104. {
  105.     return GUSI_error(EOPNOTSUPP);
  106. }
  107.  
  108. int Socket::fcntl(unsigned int, int)
  109. {
  110.     return GUSI_error(EOPNOTSUPP);
  111. }
  112.  
  113. int Socket::ioctl(unsigned int, void *)
  114. {
  115.     return GUSI_error(EOPNOTSUPP);
  116. }
  117.  
  118. int Socket::fstat(struct stat * buf)
  119. {
  120.     buf->st_dev            =    0;
  121.     buf->st_ino            =    0;
  122.     buf->st_mode        =    S_IFSOCK | 0666 ;
  123.     buf->st_nlink        =    1;
  124.     buf->st_uid            =    0;
  125.     buf->st_gid            =    0;
  126.     buf->st_rdev        =    0;
  127.     buf->st_size        =    1;
  128.     buf->st_atime        =    time(NULL);
  129.     buf->st_mtime        =    time(NULL);
  130.     buf->st_ctime        =    time(NULL);
  131.     buf->st_blksize    =    1;
  132.     buf->st_blocks        =    1;
  133.     
  134.     return 0;
  135. }
  136.  
  137. long Socket::lseek(long, int)
  138. {
  139.     return GUSI_error(ESPIPE);
  140. }
  141.  
  142. int Socket::ftruncate(long)
  143. {
  144.     return GUSI_error(EINVAL);
  145. }
  146.  
  147. int Socket::isatty()
  148. {
  149.     return 0;
  150. }
  151.  
  152. int Socket::shutdown(int)
  153. {
  154.     return GUSI_error(EOPNOTSUPP);
  155. }
  156.  
  157. void Socket::pre_select(Boolean, Boolean, Boolean)
  158. {
  159. }
  160.  
  161. int Socket::select(Boolean *, Boolean *, Boolean *)
  162. {
  163.     return 0;
  164. }
  165.  
  166. void Socket::post_select(Boolean, Boolean, Boolean)
  167. {
  168. }
  169.